package xin.nick.domain.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * <p>
 * 系统用户信息
 * </p>
 *
 * @author Nick
 * @since 2023-06-23
 */
@Data
@Schema(description = "SystemUserCreateDTO对象-系统用户信息")
public class SystemUserCreateDTO {

    @Schema(description = "系统用户id")
    @NotNull(message="[userId]不可为空")
    private Long userId;

    @Schema(description = "系统用户名字")
    @NotBlank(message="[username]不可为空")
    @Size(max = 100, message = "[username]不可以超过100")
    private String username;

    @Schema(description = "系统用户密码")
    @NotBlank(message="[password]不可为空")
    @Size(max = 100, message = "[password]不可以超过100")
    private String password;

    @Schema(description = "系统用户昵称")
    @Size(max = 100, message = "[nickname]不可以超过100")
    private String nickname;

    @Schema(description = "系统用户手机号")
    @Size(max = 32, message = "[telNumber]不可以超过32")
    private String telNumber;

    @Schema(description = "备注")
    @Size(max = 255, message = "[remark]不可以超过255")
    private String remark;

    @Schema(description = "创建人")
    private Long createUserId;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    @Schema(description = "更新人")
    private Long updateUserId;

    @Schema(description = "更新时间")
    private LocalDateTime updateTime;

    @Schema(description = "是否禁用(1是,0否)")
    private Boolean disabled;

    @Schema(description = "是否删除(1是,0否)")
    private Boolean deleted;


}
